<%--
  Created by IntelliJ IDEA.
  User: dllo
  Date: 18/5/16
  Time: 上午11:31
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Request</title>
</head>
<body>
request 对象  封装了 http请求的所有信息,不分get还是post,用法和servlet中的request没有什么区别
<%
   String  contextPath = request.getContextPath();
    String    servePath =request.getServletPath();
    out.println(contextPath);
    out.print("<br>");
    out.println("contextPath"+contextPath);
    out.println("<br>");
    out.print("servePath:"+servePath);
%>
<%--java  web中的路径:
一条完整的网站  由以下几部分组成
协议://ip地址:端口号?项目名称?各个servlet或jsp的配置路径
例如
http:..localhost;8080/code0516/myup
其中我们的项目名称可以为空,idea默认帮我们启动项目,
项目 名称就是空的,但是实际部署项目时 项目名称 往往不为空
因为一个服务器上就会跑一个tomcat,当我们有多个项目需要运行时
就需要使用项目名称来区分这个tomcat中的各个项目.

在我们平时 使用路径的时候有2中写法
1.绝对路径
以/开头 真正访问的时候 是会拼接到端口号后面
2.相对路径
以非/开头,拼接的时候是相当于当前页面所处的路径

例如:项目名称为ABC,要访问的页面地址是:
http://localhost:8080/ABC/a/b/c/target.jsp
当前页面地址是:
http://localhost:8080/ABC/a/e/f/now.jsp

使用绝对路径
/ABC/a/b/c/target.jsp
使用相对路径就是
../../b/c/target.jsp
<p>

可以看出使用相对路径,不需要关心项目名称,但是对两个文件
的位置要求比较严格,
而绝对路径,则必须在前面加上项目名称,但是项目名称之后
有可能 更改

解决办法 统一使用绝对路径,项目名称 使用request对象的
contextPath方法来动态获取


--%>

</body>
</html>
